<%@page import="slic.service.DeportistaLocalServiceUtil"%>
<%@page import="slic.model.Deportista"%>
<%@page import="slic.service.PruebaDisciplinaLocalServiceUtil"%>
<%@page import="slic.model.PruebaDisciplina"%>
<%@page import="slic.service.CategoriaDisciplinaLocalService"%>
<%@ taglib uri="http://java.sun.com/portlet_2_0" prefix="portlet" %>
<%@ taglib uri="http://liferay.com/tld/portlet" prefix="liferay-portlet" %>
<%@ taglib uri="http://liferay.com/tld/aui" prefix="aui" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<%@ taglib uri="http://liferay.com/tld/ui" prefix="liferay-ui" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt" %>

<%@page import="com.liferay.portal.kernel.util.ParamUtil"%>
<%@page import="java.util.Date"%>
<%@ page import="java.util.List" %>
<%@ page import="java.util.HashMap" %>
<%@ page import="java.util.GregorianCalendar" %>
<%@ page import="java.util.Calendar" %>
<%@ page import="java.text.SimpleDateFormat" %>
<%@ page import="javax.portlet.PortletSession" %>
<%@ page import="com.liferay.portal.kernel.util.HtmlUtil" %>
<%@ page import="com.liferay.portal.kernel.util.WebKeys" %>
<%@ page import="com.liferay.portal.kernel.portlet.LiferayWindowState" %>
<%@ page import="com.liferay.portal.theme.ThemeDisplay" %>
<%@ page import="javax.portlet.PortletSession" %>
<%@ page import="slic.service.EquipoLocalServiceUtil" %>
<%@ page import="slic.service.CategoriaDisciplinaLocalServiceUtil" %>
<%@ page import="slic.service.DisciplinaLocalServiceUtil" %>
<%@ page import="slic.service.PartidoLocalServiceUtil" %>
<%@ page import="slic.model.Equipo" %>
<%@ page import="slic.model.Disciplina" %>
<%@ page import="slic.model.Partido" %>
<%@ page import="slic.model.Escuela" %>
<%@ page import="slic.model.CategoriaDisciplina" %>

<portlet:defineObjects />

<%
	long partidoId = Long.valueOf(renderRequest.getParameter("partidoId")).longValue();
	Partido partido = PartidoLocalServiceUtil.fetchPartido(partidoId);

	CategoriaDisciplina categoria = CategoriaDisciplinaLocalServiceUtil.fetchCategoriaDisciplina(partido.getCategoriaId());

	String escuelaId = renderRequest.getParameter("escuelaId");
	if (escuelaId == null || escuelaId.trim().equals(""))
		escuelaId = "";

	String escuelaNombre = renderRequest.getParameter("escuelaNombre");
	if (escuelaNombre == null || escuelaNombre.trim().equals(""))
		escuelaNombre = "";
	
	long deportistaId = -1;
	if (renderRequest.getParameter("deportistaId") != null && !renderRequest.getParameter("deportistaId").equals("")) {
		deportistaId = Long.valueOf(renderRequest.getParameter("deportistaId")).longValue();
	}
	
	long pruebaId = -1;
	if (renderRequest.getParameter("pruebaId") != null && !renderRequest.getParameter("pruebaId").equals("")) {
		pruebaId = Long.valueOf(renderRequest.getParameter("pruebaId")).longValue();
	}
	
	List<PruebaDisciplina> listPrueba = null;
	
	String puntos="";
	
%>

<portlet:actionURL var="saveURL" name="savePuntaje">
	<portlet:param name="deportistaId" value="<%= String.valueOf(deportistaId) %>"/>
	<portlet:param name="partidoId" value="<%= String.valueOf(partidoId) %>"/>
	<portlet:param name="pruebaId" value="<%= String.valueOf(pruebaId) %>"/>
	<portlet:param name="puntos" value="<%= String.valueOf(puntos) %>"/>
</portlet:actionURL>

<portlet:renderURL var="viewURL">
	<portlet:param name="mvcPath" value="/html/puntajes/view.jsp"/>
	<portlet:param name="partidoId" value="<%= String.valueOf(partido.getPartidoId()) %>"/>
</portlet:renderURL>


<portlet:renderURL var="searchEscuelaURL" windowState="<%= LiferayWindowState.POP_UP.toString() %>">
	<portlet:param name="mvcPath" value="/html/equipos/searchEscuela.jsp"/>
</portlet:renderURL>

<portlet:renderURL var="seleccionDeportistaURL">
	<portlet:param name="mvcPath" value="/html/puntajes/edit.jsp"/>
	<portlet:param name="partidoId" value="<%= String.valueOf(partido.getPartidoId()) %>"/>
</portlet:renderURL>

<portlet:renderURL var="seleccionPruebaURL">
	<portlet:param name="mvcPath" value="/html/puntajes/edit.jsp"/>
	<portlet:param name="partidoId" value="<%= String.valueOf(partido.getPartidoId()) %>"/>
</portlet:renderURL>

<liferay-ui:header
	backURL="<%= viewURL %>"
	backLabel="search"
	title="Puntaje"
/>


<aui:form>

	<liferay-ui:error key="no-deportista" message="no-deportista" />
	<liferay-ui:error key="no-prueba" message="no-prueba" />
	<liferay-ui:error key="no-puntaje" message="no-puntaje" />
	<liferay-ui:error key="puntaje-no-es-numero" message="puntaje-no-es-numero" />

	<aui:field-wrapper label="Escuela">
		<input type="text" readonly="readonly" size="30" id="<portlet:namespace />escuelaNombre" name="<portlet:namespace />escuelaNombre" value="<%=escuelaNombre%>" />
		<input type="hidden" id="<portlet:namespace />escuelaId" name="<portlet:namespace />escuelaId" value="<%=escuelaId%>" />
		<br/>
		<a href="#" onclick="abrirSeleccionarEscuela()">Seleccionar...</a>
	</aui:field-wrapper>
	
	<c:if test="<%=!escuelaId.isEmpty()%>">
	
		<aui:select name="deportistaId" label="Deportista" id="deportista" onChange="seleccionDeportista()">
				<option value=""></option>
			<%
				
				Date hoy = new Date();
				String fechaNacimientoMaxima = CategoriaDisciplinaLocalServiceUtil.getFechaNacimientoMaxima(categoria, hoy);
				String fechaNacimientoMinima = CategoriaDisciplinaLocalServiceUtil.getFechaNacimientoMinima(categoria, hoy);
				HashMap<String, String> queryMapDeportista = new HashMap<String, String>();
				queryMapDeportista.put("fechaNacimientoMinima", fechaNacimientoMinima);
				queryMapDeportista.put("fechaNacimientoMaxima", fechaNacimientoMaxima);
				queryMapDeportista.put("escuelaId", escuelaId);
				List<Deportista> listDeportistas = DeportistaLocalServiceUtil.findByMap(queryMapDeportista);
				listDeportistas = DeportistaLocalServiceUtil.filterByCategoriaId(listDeportistas, Long.valueOf(categoria.getCategoriaId()));
				
					
				for (Deportista deportista : listDeportistas) {
					if (deportista.getDeportistaId() == deportistaId) {
						out.write("<option value=\"" + deportista.getDeportistaId() + "\" selected=\"selected\">"
								+ deportista.getNombre() + "</option>");
					}
					else {
					out.write("<option value=\"" + deportista.getDeportistaId() + "\">"
							+ deportista.getNombre() + "</option>");
					}
				}
			%>
		</aui:select>
		
		<c:if test="<%=deportistaId!=-1L%>">
			<aui:select name="pruebaId" label="Prueba" id="prueba" onChange="seleccionPrueba()">
					<option value=""></option>
				<%
					listPrueba = PruebaDisciplinaLocalServiceUtil.findByDisciplina(categoria.getDisciplinaId());
					
					for (PruebaDisciplina prueba : listPrueba) {
						if (prueba.getPruebaId() == pruebaId) {
							out.write("<option value=\"" + prueba.getPruebaId() + "\" selected=\"selected\">"
									+ prueba.getNombre() + "</option>");
						}
						else {
						out.write("<option value=\"" + prueba.getPruebaId() + "\">"
								+ prueba.getNombre() + "</option>");
						}
					}
				%>
			</aui:select>
			<aui:input name="puntos" size="30" label="Puntos" showRequiredLabel="true" >
					<aui:validator name="required" />
			</aui:input>
			
			<aui:button-row>
				<aui:button type="submit" value="Aceptar" onClick="savePuntaje()" />
			</aui:button-row>
		
	
		</c:if>	
		
	</c:if>

</aui:form>

<aui:script>

		function savePuntaje() {
			document.<portlet:namespace/>fm.action = '<%= saveURL %>';
			
		}

		function seleccionDeportista() {
			document.<portlet:namespace/>fm.action = '<%= seleccionDeportistaURL %>';
			document.<portlet:namespace/>fm.submit();
		}
		
		function seleccionPrueba() {
			document.<portlet:namespace/>fm.action = '<%= seleccionPruebaURL %>';
			document.<portlet:namespace/>fm.submit();
		}
		
		function abrirSeleccionarEscuela() {
			Liferay.Util.openWindow({
				dialog: {align: Liferay.Util.Window.ALIGN_CENTER,
						after: {render: function(event) {this.set('y', this.get('y') + 50);}}, width: 960},
				id: '<%=liferayPortletResponse.getNamespace() + "escuelas"%>',
				title: 'Escuelas',
				uri: '<%=searchEscuelaURL.toString()%>'});
		}
		

		Liferay.provide(
			window,
			'seleccionarEscuela',
			function(escuelaId, escuelaNombre) {
				var A = AUI();

				A.DialogManager.closeByChild('#<portlet:namespace />escuelas');

				var curPortletBoundaryId = '#p_p_id<portlet:namespace />';

				document.getElementById('<portlet:namespace />escuelaId').value = escuelaId;
				document.getElementById('<portlet:namespace />escuelaNombre').value = escuelaNombre;
				document.<portlet:namespace/>fm.submit();
			},
			['aui-dialog','aui-dialog-iframe']
		);

</aui:script>